Working with PrizmDoc > Administering PrizmDoc > Sizing Servers > PrizmDoc Application Services |
The PrizmDoc Application Service (PAS) can run on a wide variety of server configurations. It will automatically scale to utilize available CPU cores and payload data is streamed as much as possible to reduce RAM usage. It is typically external dependencies like the PrizmDoc Server, which PAS uses for process-heavy conversions that can affect its perceived responsiveness.
PAS may also be configured to run on multiple servers. This, combined with modest hardware requirements, means that smaller, low-cost servers can be used and scaled horizontally (more servers are added) when additional capacity is needed.
Many requests handled by PAS will result in a HTTP request to PrizmDoc Server. If PAS and PrizmDoc Server are hosted on separate servers, it is important to have good network throughput between nodes for optimal performance.
The following minimum requirements can reasonably support 500 native PAS requests per second. A native PAS request is one that PAS handles entirely and does not depend on a supporting resource like PrizmDoc Server to fulfill the request.
Pre-Conversion Services are included as a "Developer Preview." This feature is in late-stage development and API's marked as such should be used for evaluation purposes only and should not be used in production deployments. Note that these API's may undergo change prior to feature completion. The Pre-Conversion Services will be feature complete in PrizmDoc v11.2. |
Enabling the Viewing Packages feature adds additional considerations for hardware requirements. This feature requires a database and will cause PAS to make additional HTTP requests to PrizmDoc Server, increase Disk IO, and execute queries against the database.
If the database is hosted on a separate server, it is important to have good network throughput between nodes for optimal performance.
PAS will use the file system to store all artifacts of a viewing package which increases the amount of storage needed by the service. The amount of storage needed is very closely tied to the number of active viewing packages and the types of documents being viewed. For example, a viewing package of a 100 page document requires several times the storage that a 1 page document needs. Likewise, a document page that contains drawings and images will consume more storage than a page with just text. Testing with a representative set of sample documents is recommended to understand the file storage requirements of a specific application.
PAS will store various bits of metadata about each viewing package in the configured database. The total amount of data stored for a viewing package in the database partly depends on the number of pages in the source document. However, the metadata size is not currently affected by the content of individual pages. Again, testing with a representative set of sample documents is recommended.
The following minimum requirements can reasonably support 5 simultaneous viewing package creation processes per core. However, viewing package creation is heavily dependent on PrizmDoc Server for generating content. As PAS instances are scaled up, the supporting PrizmDoc Server instances must be scaled up appropriately to avoid overloading them. Additionally, the overall number of simultaneous viewing package creation processes should be throttled to avoid overburdening the system.